home *** CD-ROM | disk | FTP | other *** search
/ Risc World 3 / Risc World 3.iso / SOFTWARE / ISSUE4 / ZAP / !Zap / Modules / !ZapMJE / Changes < prev    next >
Text File  |  2002-09-18  |  5KB  |  144 lines

  1. ZapMJE changes
  2. © Martin Ebourne, 1997 - 1999
  3. © Zap developers, 2000 - 2002
  4.  
  5. Changes 0.79 to 0.80    <christian@zap.tartarus.org>
  6.  
  7.   * Assembler mode will cope with C-style escapes in string constants, if
  8.     enabled. This means "Strings with \"Quotes\"" will be coloured correctly.
  9.  
  10. Changes 0.77 to 0.79    <ds@zap.tartarus.org>
  11.             <dj@zap.tartarus.org>
  12.  
  13.   * LISTFNS code for C, C++, Java modes fixed.
  14.   * Internationalisation mostly done.
  15.   * Indentation improved; optionally reindents comments, ignores preprocessor
  16.     lines, and various other corrections.
  17.   * Since smart indenting is still flaky, this is now optional. Currently the
  18.     alternative is a /very/ old indenting system, entirely in assembler (ie:
  19.     pre-0.72). This can't cope with tabs in the indenting, so don't try it.
  20.     This will, in theory, be a temporary solution until Zap post-v1.45 when
  21.     we will try to do indenting properly.
  22.   * Preprocessor colouring now an option in Java mode.
  23.   * Missing HelpData entries fixed up, documentation updated etc.
  24.   * Version number bumped twice since we had millions of copies with the same
  25.     version and were getting confused.
  26.   * Killed the ZapMJE module help text which contravened the style guide.
  27.   * Licensed under GPL.
  28.   * MJE_IF and similar commands work (again?) in C++, Pascal modes.
  29.  
  30. Changes 0.76 to 0.77    <dj@zap.tartarus.org>
  31.  
  32. Maintenance of the module is now floating. Various people may take control
  33. of it for short periods until a new maintainer is found.
  34.  
  35.   * Build system radically altered to work more like the system we're
  36.     using for Zap, ZapRedraw, etc.. Still won't build with AS, because
  37.     Martin used various obscure features of objasm. Still requires Norcroft
  38.     compiler for PIC stuff.
  39.   * Minor bug fixes. This version is actually based on a copy of the code
  40.     older than that used for 0.76, since this appears much more stable.
  41.   * Help code and other commands removed that have been replaced by others
  42.     elsewhere.
  43.  
  44. Changes 0.70 to 0.76    <tim@zap.tartarus.org>
  45.  
  46. Maintenance of the module transferred to Tim Tyler:
  47.  
  48.   • This is for an indefinite period, starting November 1997.  Queries,
  49.     bug reports, wishlists, etc concerning ZapMJE should currently be
  50.     addressed to him at tim@zap.tartarus.org.
  51.  
  52. Miscellaneous improvements:
  53.  
  54.   • Rearranged and partially re-wrote the mode independent parts for maximal
  55.     code sharing. This also means that new modes which take advantage of
  56.     compilation, commenting, etc., can be added almost without writing any
  57.     code.
  58.  
  59.   • Updated the default colours to be 24 bit. This means that the default C
  60.     colours are sensible at last, although naturally you need a 256+ colour
  61.     mode for that to be the case.
  62.  
  63.   • Added MJE_COMMENT
  64.  
  65. C improvements:
  66.  
  67.   • Recoded the reserved word detection in the syntax colouring. Reserved
  68.     words (especially long ones) can now be added much more easily and it
  69.     will also allow easier splitting of the single C/C++ mode into separate
  70.     C and C++ modes. Even better, a speedup of typically 30% on the overall
  71.     scanning time was obtained. (Yes I know I shouldn't have used a linear
  72.     search in the first place but it was a rush to get the syntax colouring
  73.     ready back then.)
  74.  
  75.   • Split the C/C++ mode into separate C and C++ modes. Syntax colouring is
  76.     now appropriate for the mode in use.
  77.  
  78. Changes since 0.71 (Floating around generally)
  79.  
  80.   • Changed two bits of code to make the C syntax colouring StrongARM
  81.     compatible, since DEC altered the behaviour slightly.
  82.  
  83.   • Added colouring of 0x123 in assembler mode.
  84.  
  85.   • Added 'explicit' C++ reserved word, which has recently been added to the
  86.     draft standard.
  87.  
  88. Changes since 0.72 (Here and there)
  89.  
  90.   • Got internal C code support working.
  91.  
  92.   • Re-wrote MJE_IFMODE in C to work with, and only with, mode names.
  93.  
  94.   • Re-wrote bracket matching in C. Now works on all modes, doesn't miss
  95.     characters when using the copy key and copes with brackets in quotes.
  96.  
  97.   • Wrote bracket highlighting (as in paren mode for Emacs).
  98.  
  99.   • Wrote Java mode
  100.  
  101.   • Indenting re-written in C.  It uses the existing braket matching code
  102.     to some extent, when finding the indentation of the matching brace.
  103.  
  104.   • Indentation now supports indentation with tabs: these are used if
  105.     the specified indentation is given as a negative value.  Mixed tab-
  106.     and-space indentation styles are (mostly) allowed as well.
  107.  
  108.  
  109. TODO:
  110.  
  111. Upgrade C redraw to do syntax parsing
  112. Re-write compilation
  113. Re-write swap-to-header
  114. Re-write config
  115. Add auto-setting of indentation flag (which also test to see if tabs are
  116.   being used or not)
  117.  
  118. Write exception handling for C
  119. Finish Zap C veneers and add any new stuff
  120. Sort out C veneers for proper calling of base mode entry points
  121. Bracket highlighting: pascal redraw & assembler eol
  122.  
  123. Buy a strongarm
  124.  
  125.  
  126. INDENTING:
  127.  
  128. block-open        +0      - line starting with {
  129. block-intro       +2      - line after {
  130. block-close       +0      - line starting with }
  131.  
  132. arglist-intro     +2      - line starting with (
  133. arglist-cont      +2      - line after (
  134. arglist-close     +0      - line starting with )
  135.  
  136. case-label        +0      - line starting with case ???:
  137. case-intro        +2      - line after line starting with case ???:
  138.  
  139. access-label      -1      - line starting with private: or public:
  140. label             -1      - line starting with label:
  141.  
  142. comment-open      +0      - line starting with /* or //
  143. preprocessor-open 0       - line starting with #
  144.